package file;

import org.junit.jupiter.api.Test;

import java.io.File;
import java.io.IOException;

/**
 * @author DCSGO
 * @version 1.0
 * 创建文件的三种方法
 */
@SuppressWarnings({"all"})
public class FileCreate {

    //new File(String pathname) 根据路径构建一个 File 对象
    @Test
    public void creat01() {
        String filePath = "C:\\Users\\Administrator\\Desktop\\Javacode\\java-learning-code\\chapter19\\src\\file\\file1.txt";
        //此时只是在内存中创建了一个 File 对象 本地磁盘还并没有创建文件
        File file = new File(filePath);
        try {
            //执行完当前代码后 本地磁盘才真正创建了一个文件
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //new File(File parent,String child) 根据父目录文件+子路径构建
    @Test
    public void creat02() {
        File parentFile = new File("C:\\Users\\Administrator\\Desktop\\Javacode\\java-learning-code\\chapter19\\src\\file");
        String childPath = "file2.txt";
        File file = new File(parentFile, childPath);
        try {
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //new File(String parent,String child) 根据父目录+子路径构建
    @Test
    public void creat03() {
        String parentPath = "C:\\Users\\Administrator\\Desktop\\Javacode\\java-learning-code\\chapter19\\src\\file";
        String childPath = "file3.txt";
        File file = new File(parentPath, childPath);
        try {
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
